//-----------------------------------------------------------------------------
// Copyright (c) 2011 David Waby
// Initially created on 03/11/2011
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// Singleton inline functions
//-----------------------------------------------------------------------------
template<typename T> T& Singleton<T>::Get()
{
	return *ms_instance;
}
//-----------------------------------------------------------------------------
template<typename T> bool Singleton<T>::Exists()
{
	return (ms_instance != NULL);
}
//-----------------------------------------------------------------------------
template<typename T> void Singleton<T>::Create()
{
	ms_instance = new T;
}
//-----------------------------------------------------------------------------
template<typename T> void Singleton<T>::Release()
{
	if(ms_instance != NULL)
	{
		delete ms_instance;
	}
	ms_instance = NULL;
}
//-----------------------------------------------------------------------------
template<typename T> Singleton<T>::Singleton() 
{
}
//-----------------------------------------------------------------------------